1. Field of the Invention
The present invention relates to an echo canceller used for cancelling an echo signal generated due to impedance mismatching of a circuit converter in a two-wire circuit and a four-wire circuit in a telephone circuit, and for improving the speech quality of a long distance telephone circuit.
2. Description of the Prior Art
Conventionally, as an adaptive estimating algorithm for echo cancellers, an algorithm based on a learning identification method has widely been used.
In an echo canceller based on the learning identification method, a satisfactory convergence characteristic can be obtained when a signal having no correlation as in a white noise signal is inputted. However, when a signal having strong correlation such as a speech signal is inputted, a problem arises in which it takes a long convergence time.
As an echo canceller for solving such a problem, the arrangement disclosed in Japanese Patent Publication No. 58-31129 (1983) is known.
FIG. 1 is a block diagram showing the arrangement of a conventional echo canceller. In FIG. 1, reference numeral 1 designates a receiving side input terminal, 2 a receiving side output terminal, 3 a transmitting side input terminal, 4 a transmitting side output terminal, 5 a linear prediction coefficient calculator, 6 a first linear prediction inverse filter, 7 a first register, 8 a second linear prediction inverse filter, 9 a second register, 10 a first convolver, 11 a first subtracter, 12 a corrector, 13 a third register, 14 a second convolver, and 15 designates a second subtracter.
With regard to the echo canceller arranged as described above, the operation and problem associated therewith will be described hereinafter.
In the following description, it is assumed that signals within the echo canceller have been sampled in time and hence these signals are discrete time signals, and a sampler and a hold circuit required for this purpose will be omitted in the following description since these circuits are well known.
Now supposing that, at a time j, a receiving side input signal is x.sub.j, a transmitting side input signal is y.sub.j, and a transmitting side output signal is e.sub.j. Further, it is assumed that a signal vector X.sub.j of the receiving side input signals is expressed by equation (1), and an estimated impulse response H.sub.j of an echo path is expressed by equation (2). EQU X.sub.j =(x.sub.j, x.sub.j-1, . . . , x.sub.j-(N-1))' (1) EQU H.sub.j =(h.sub.0j,h.sub.1j, . . . , h.sub.N-1j), (2)
where, N represents the number of samples of the impulse response, and the symbol ' (dash) represents transposition of a vector.
When a receiving side input signal having a predetermined time length is inputted, in the linear prediction coefficient calculator 5, linear prediction coefficients a.sub.i (i=1, 2, . . . , M) of the receiving side input signal are obtained based upon of an M-th order linear prediction model. The linear prediction coefficients are calculated by, for example, Durbins method.
In the first linear prediction inverse filter 6, a prediction error signal x.sub.j of the receiving side input signal is produced by performing linear prediction inverse filtering as shown in equation (3) by using the linear prediction coefficients calculated in the linear prediction coefficient calculator 5 and the receiving side input signal. ##EQU1##
In the first register 7, a signal vector X.sub.j of the prediction error signals of the receiving side input signal obtained in the above manner is stored in the form of equation (4). EQU X.sub.j =(x.sub.j, x.sub.j-1, . . . x.sub.j-(N-1))' (4)
In the second linear prediction inverse filter 8, a prediction error signal y.sub.j of a transmitting side input signal is produced by performing linear prediction inverse filtering as shown in equation (5) by using the linear prediction coefficient and the transmitting side input signal. ##EQU2##
Next, an estimated value y.sub.i of a prediction error signal of an echo signal is obtained in the first convolver 10 by convolving, as shown in equation (6), the content of the second register 9 storing the estimated impulse response in the form of equation (2) with the content of the first register 7. EQU y.sub.j =H.sub.j 'X.sub.j ( 6)
In the first subtracter 11, a prediction error signal e.sub.j is produced by subtracting the estimated value of the prediction error signal of the echo signal from the prediction error signal of the transmitting side input signal as shown in equation (7). EQU e.sub.j =y.sub.j -y.sub.j ( 7)
In the corrector 12, the content of the second register 9, that is, the estimated impulse response is corrected in accordance with the algorithm of the learning identification method as shown in equation (8). ##EQU3## where, .alpha. is a constant in a range 0&lt;.alpha.&lt;2, and .parallel.X.sub.j .parallel. represents the Euclidian norm of X.sub.j.
In the second convolver 14, an estimated echo signal y.sub.j is produced by convolving, as shown in equation (9), the content of the second register 9 with the content of the third register 13 storing the signal train X.sub.j of the receiving side input signals in the form of equation (1). EQU y.sub.j =H.sub.j'X.sub.j ( 9)
In the second subtracter 15, by subtracting the estimated echo signal from the transmitting side input signal as shown in equation (10), a transmitting side output signal is produced, and this transmitting side output signal is outputted to the transmitting side output terminal 4. EQU e.sub.j =y.sub.j -y.sub.j ( 10)
The receiving side input signal is outputted, as it is, to the receiving side output terminal 2.
The foregoing description is made as to the operation of the echo canceller arranged as shown in FIG. 1, in which by reducing the correlation in the receiving side input signal based on the linear prediction model, a good convergence characteristic can be obtained even for a receiving side input signal having strong correlation.
However, in the echo canceller arranged as shown in FIG. 1, there is a problem in that the number of calculations and the amount of memory are increased as compared with an echo canceller in accordance with a normal learning identification method.
Hereinafter, the number of calculations and the amount of memory will be evaluated concretely. First, the number of calculations will be evaluated in view of the number of multiplications per sampling period. In the echo canceller arranged as shown in FIG. 1, supposing that the calculations of the linear prediction coefficients are performed in accordance with the Durbin's method the number of multiplications per sampling period is about (3N+4M+M.sup.2 /N). On the other hand, in the echo canceller according to the normal learning identification method, the number of multiplications per sampling period is 2N. Here, assuming that N=320 and M=5, if the ratio of the number of multiplications of the echo canceller arranged as FIG. 1 to that of the echo canceller according to the normal learning identification method is obtained, this ratio will be 1.53. In other words, in the echo canceller arranged as in FIG. 1, it is required to improve the calculation capability by 50% due to the introduction of the linear prediction model as compared with the case in which the above-mentioned model is not introduced.
Next, the amount of memory will be evaluated concretely. In the echo canceller arranged as in FIG. 1, the major part of the required amount of memory is occupied by three registers each having a length of N. In contrast, in the echo canceller according to the normal learning identification method, two registers each having the length N are required. Therefore, the echo canceller arranged as in FIG. 1 is required to increase the amount of memory by about 50% due to the introduction of the linear prediction model as compared with the case in which the above-mentioned model is not introduced.
As described in the foregoing, in the echo canceller arranged as in FIG. 1, by reducing the correlation in the receiving side input signal based on the linear prediction model, a good convergence characteristic can be obtained even for a receiving side input signal having strong correlation. However, there is a problem in that the number of calculations and the amount of memory must be increased due to the introduction of the linear prediction model.